THIRD ATTEMPT  (BEST VERSION)

Global $again, $ans, $clip, $def, $func, $inifle, $res, $ver

$inifle = @ScriptDir & "\Settings.ini"
$def = IniRead($inifle, "Title", "part", "")
AutoItSetOption("WinTitleMatchMode", 2)
WinActivate($def, "")
; C:\Program Files\Tools\AutoIt3\AutoIt3.exe
$ver = FileGetVersion(@ProgramFilesDir & '\Tools\AutoIt3\AutoIt3.exe')
If $ver = '3.3.0.0' Then
	$clip = ClipGet()
	ClipPut('')
	;Sleep(500)
	Send("^c")
	Sleep(500)
	If ClipGet() <> "" Then
		$ans = MsgBox(262179, "Jump To What Query", "YES = Function.  NO = GUI Msg.  CANCEL = Next Text.")
		If $ans = 6 Then
			$func = 'Func ' & ClipGet() & '('
		ElseIf $ans = 7 Then
			$func = '$msg = ' & ClipGet()
		ElseIf $ans = 2 Then
			$func = ' ' & ClipGet()
		EndIf
		Send("^f")
		Sleep(500)
		Send($func)
		Sleep(500)
		Send("!f")
		;MsgBox(0, "Function", $func)
		If $ans <> 6 Then
			$again = 0
			While 1
				Sleep(300)
				Send("+{RIGHT}")
				Send("^c")
				$res = ClipGet()
				$res = StringRight($res, 1)
				If $res = " " Or $res = Chr(10) Or $res = Chr(13) Then
					Send("+{LEFT}")
					ExitLoop
				Else
					$again = $again + 1
					If $again < 2 Then
						Send("{F3}")
					Else
						$ans = MsgBox(262177, "Jump To GUI Msg", "OK = Try again.")
						If $ans = 1 Then
							Send("{F3}")
						Else
							ExitLoop
						EndIf
					EndIf
				EndIf
			WEnd
		EndIf
	EndIf
	ClipPut($clip)
Else
	Send("^j")
EndIf
;MsgBox(0, "AutoIt Version", $ver)
Exit




FIRST ATTEMPT

Global $clip, $def, $func, $inifle, $ver

$inifle = @ScriptDir & "\Settings.ini"
$def = IniRead($inifle, "Title", "part", "")
AutoItSetOption("WinTitleMatchMode", 2)
WinActivate($def, "")
; C:\Program Files\Tools\AutoIt3\AutoIt3.exe
$ver = FileGetVersion(@ProgramFilesDir & '\Tools\AutoIt3\AutoIt3.exe')
If $ver = '3.3.0.0' Then
	$clip = ClipGet()
	ClipPut('')
	;Sleep(500)
	Send("^c")
	Sleep(500)
	If ClipGet() <> "" Then
		$func = ' ' & ClipGet()
		Send("^f")
		Sleep(500)
		Send($func)
		Sleep(500)
		Send("!f")
		;MsgBox(0, "Function", $func)
	EndIf
	ClipPut($clip)
Else
	Send("^j")
EndIf
;MsgBox(0, "AutoIt Version", $ver)
Exit


SECOND ATTEMPT  (BETTER VERSION)

$def = IniRead($inifle, "Title", "part", "")
AutoItSetOption("WinTitleMatchMode", 2)
WinActivate($def, "")
; C:\Program Files\Tools\AutoIt3\AutoIt3.exe
$ver = FileGetVersion(@ProgramFilesDir & '\Tools\AutoIt3\AutoIt3.exe')
If $ver = '3.3.0.0' Then
	$clip = ClipGet()
	ClipPut('')
	;Sleep(500)
	Send("^c")
	Sleep(500)
	If ClipGet() <> "" Then
		$ans = MsgBox(262179, "Jump To What Query", "YES = Function. NO = GUI Msg. CANCEL = Next Text.")
		If $ans = 6 Then
			$func = 'Func ' & ClipGet() & '('
		ElseIf $ans = 7 Then
			$func = '$msg = ' & ClipGet()
		ElseIf $ans = 2 Then
			$func = ' ' & ClipGet()
		EndIf
		Send("^f")
		Sleep(500)
		Send($func)
		Sleep(500)
		Send("!f")
		;MsgBox(0, "Function", $func)
	EndIf
	ClipPut($clip)
Else
	Send("^j")
EndIf
;MsgBox(0, "AutoIt Version", $ver)
Exit


The following had to be ammended for above to work, with the error being related to ampersand within a dialog Msgbox. Errors may go beyond that, but ampersand or two lots of quotes caused an error.

		$ans = MsgBox(262179, "Jump To Function Query", _
			"YES = Jump to Function." & @LF & _
			"NO = Jump to GUI Msg." & @LF & _
			"CANCEL = Jump to Next Text." & @LF & @LF & _
			"NOTE - Yes is exact.", 0)
